Security News
Bun 1.2 Released with 90% Node.js Compatibility and Built-in S3 Object Support
Bun 1.2 enhances its JavaScript runtime with 90% Node.js compatibility, built-in S3 and Postgres support, HTML Imports, and faster, cloud-first performance.
@turf/line-slice
Advanced tools
@turf/line-slice is a module from the Turf.js library that allows you to extract a portion of a LineString between two points. This can be useful for various geospatial operations such as trimming routes, creating sub-paths, or analyzing specific segments of a path.
Extracting a LineString segment
This feature allows you to extract a segment of a LineString between two specified points. The code sample demonstrates how to create a LineString and then slice it between two points using the `lineSlice` function.
const turf = require('@turf/turf');
const line = turf.lineString([
[-77.031669, 38.878605],
[-77.029609, 38.881946],
[-77.020339, 38.884084],
[-77.025661, 38.885821],
[-77.021884, 38.889563],
[-77.019824, 38.892368]
]);
const start = turf.point([-77.029609, 38.881946]);
const stop = turf.point([-77.021884, 38.889563]);
const sliced = turf.lineSlice(start, stop, line);
console.log(JSON.stringify(sliced));
The 'polyline' package is used for encoding and decoding Google Maps Polylines. While it doesn't offer slicing capabilities directly, it is useful for handling polyline data, which can then be manipulated using other tools.
The 'geojson-tools' package provides various utilities for manipulating GeoJSON data, including line splitting and other geometric operations. It offers a broader range of functionalities compared to @turf/line-slice but may require more complex operations to achieve similar results.
Takes a line, a start Point, and a stop point and returns a subsection of the line in-between those points. The start & stop points don't need to fall exactly on the line.
This can be useful for extracting only the part of a route between waypoints.
Parameters
startPt
Feature<Point> starting pointstopPt
Feature<Point> stopping pointline
(Feature<LineString> | LineString) line to sliceExamples
var line = {
"type": "Feature",
"properties": {},
"geometry": {
"type": "LineString",
"coordinates": [
[-77.031669, 38.878605],
[-77.029609, 38.881946],
[-77.020339, 38.884084],
[-77.025661, 38.885821],
[-77.021884, 38.889563],
[-77.019824, 38.892368]
]
}
};
var start = {
"type": "Feature",
"properties": {},
"geometry": {
"type": "Point",
"coordinates": [-77.029609, 38.881946]
}
};
var stop = {
"type": "Feature",
"properties": {},
"geometry": {
"type": "Point",
"coordinates": [-77.021884, 38.889563]
}
};
var sliced = turf.lineSlice(start, stop, line);
//=line
//=sliced
Returns Feature<LineString> sliced line
This module is part of the Turfjs project, an open source module collection dedicated to geographic algorithms. It is maintained in the Turfjs/turf repository, where you can create PRs and issues.
Install this module individually:
$ npm install @turf/line-slice
Or install the Turf module that includes it as a function:
$ npm install @turf/turf
FAQs
turf line-slice module
The npm package @turf/line-slice receives a total of 601,621 weekly downloads. As such, @turf/line-slice popularity was classified as popular.
We found that @turf/line-slice demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Bun 1.2 enhances its JavaScript runtime with 90% Node.js compatibility, built-in S3 and Postgres support, HTML Imports, and faster, cloud-first performance.
Security News
Biden's executive order pushes for AI-driven cybersecurity, software supply chain transparency, and stronger protections for federal and open source systems.
Security News
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.